![]() Plattensystem und Verfahren zum Steuern eines Plattenarraysystems
专利摘要:
Ein Plattenarraysystem verfügt über ein erstes und ein zweites Gehäuse sowie einen Controller zum Steuern des ersten und des zweiten Gehäuses. Im ersten Gehäuse sind Faserkanal-Festplattenlaufwerke untergebracht, und im zweiten Gehäuse sind Seriell-ATA-Festplattenlaufwerke untergebracht. Wenn in einem Seriell-ATA-Festplattenlaufwerk im zweiten Gehäuse gespeicherte Daten gelesen werden, liest der Controller mehrere Datenstücke, die die zu lesenden Daten enthalten, und Paritätsdaten für die mehreren Datenstücke von allen Festplattenlaufwerken einer RAID-Gruppe, zu der das Festplattenlaufwerk gehört, das die zu lesenden Daten speichert. So untersucht der Controller, ob die mehreren Datenstücke, die die zu lesenden Daten enthalten, mit fehlerhaftem Inhalt oder nicht in die Festplattenlaufwerke geschrieben sind. 公开号:DE102004013129A1 申请号:DE200410013129 申请日:2004-03-17 公开日:2005-06-30 发明作者:Azuma Kano;Takuji Ogawa;Ikuya Yagisawa 申请人:Hitachi Ltd; IPC主号:G06F3-06
专利说明:
[0001] DieErfindung betrifft ein Plattenarraysystem und ein Verfahren zumSteuern eines solchen. [0002] Inden letzten Jahren wird einhergehend mit der Zunahme von Speicherkapazität in Plattenarraysystemenderen Bedeutung in Informationsverarbeitungssystemen immer größer. Daherist es wesentlich, Daten korrekt an einer angeforderten Position einzuschreibenund eine Inkorrektheit gelesener Daten auf eine Daten-Eingabe/Ausgabe-Anforderung voneiner Informationsverarbeitungsvorrichtung oder dergleichen zu erkennen. [0003] JP-A-5-150909offenbart ein Verfahren, bei dem in einer Magnetplatteneinheit zweiKöpfe vorhandensind und von den zwei Köpfengelesene identische Daten miteinander verglichen werden, um die Zuverlässigkeitbeim Schreiben und Lesen in der Magnetplatteneinheit zu verbessern. [0004] Wenndas in JP-A-5-150909 offenbarte Verfahren bei einem Plattenarraysystemangewandt wird, müssenin jeder Magnetplatteneinheit zwei Köpfe angebracht werden. Demgemäß steigendie Einheitskosten zum Herstellen jedes Festplattenlaufwerks an.Daher ist ein Verfahren zum Verbessern der Zuverlässigkeitbei einem Festplattenlaufwerk ohne Änderung des körperlichenAufbaus desselben, z.B. ohne Hinzufügens irgendeines Kopfs zu ihm,gefordert. [0005] Außerdem wurdenbei Plattenarraysystemen Festplattenlaufwerke gemäß seriell-ATAoder parallel-ATA sowie Faserkanal-Festplattenlaufwerke in Betrieb genommen.Dies, da Festplattenlaufwerke gemäß seriell-ATA oder parallel-ATAhinsichtlich der ZuverlässigkeittatsächlichFaserkanal-Festplattenlaufwerken unterlegen sind, sie jedoch billigersind. Daher besteht Bedarf an der Entwicklung eines Verfahrens zumVerbessern der Zuverlässigkeitbei anderen Festplattenlaufwerken als solchen mit Faserkanal innerhalbeines Plattenarraysystems, das aus einer Kombination von Faserkanal-Festplattenlaufwerkenund anderen Festplattenlaufwerken, die dem Seriell-ATA-Standardoder dergleichen genügen,besteht. [0006] DieErfindung wurde unter Berücksichtigung dervorigen Probleme entwickelt. Es ist eine Aufgabe der Erfindung,ein Plattenarraysystem und ein Verfahren zum Steuern eines solchenzu schaffen. [0007] Umdie vorstehende Aufgabe zu lösen,verfügtein Plattenarraysystem gemäß einerHauptkonfiguration der Erfindung über ein erstes Gehäuse, ein zweitesGehäuseund einen Controller. Das erste Gehäuse beherbergt eine oder mehrereRAID-Gruppen. JedeRAID-Gruppe besteht aus mehreren Festplattenlaufwerken zum Senden/Empfangenvon Daten entsprechend einem ersten Schnittstellenstandard. DieFestplattenlaufwerke sind übereinen Kommunikationspfad miteinander verbunden. Das zweite Gehäuse beherbergteine oder mehrere RAID-Gruppen. Jede RAID-Gruppe besteht aus mehrerenFestplattenlaufwerken zum Senden/Empfangen von Daten entsprechendeinem zweiten Schnittstellenstandard. Die Festplattenlaufwerke sind über denKommunikationspfad mittels mehrerer Wandeleinheiten zum Wandelndes ersten und des zweiten Schnittstellenstandards ineinander verbunden.Die dem zweiten Schnittstellenstandard genügenden Festplattenlaufwerkeverfügen über geringereZuverlässigkeitals die dem ersten Schnittstellenstandard genügenden Festplattenlaufwerke.Der Controller verfügt über einenKanal-Steuerabschnitt, einen Platten-Steuerabschnitt, einen Cachespeicherund eine CPU. Der Kanal-Steuerabschnitt ist mit einer Informationsverarbeitungsvorrichtungverbunden, um mit dieser in Kommunikation treten zu können. DerKanal-Steuerabschnitt empfängtAnforderungen von der Informationsverarbeitungsvorrichtung. DieAnforderung beinhaltet eine Leseanforderung zum Lesen von Daten vonden Festplattenlaufwerken im ersten oder zweiten Gehäuse sowieeine Schreibanforderung zum Schreiben von Daten in die Festplattenlaufwerkeim ersten oder zweiten Gehäuse.Der Platten-Steuerabschnittist überden Kommunikationspfad mit den mehreren Festplattenlaufwerken imersten und zweiten Gehäuseverbunden, um mit den mehreren Festplattenlaufwerken im ersten undzweiten Gehäusein Kommunikation treten zu können.Der Platten-Steuerabschnitt führteine Eingabe/Ausgabe von Daten und Paritätsdaten von/in die mehrerenFestplattenlaufwerke im ersten und zweiten Gehäuse entsprechend der vom Kanal-Steuerabschnittempfangenen Leseanforderung oder Schreibanforderung aus. Die Paritätsdatensind Daten zum Erkennen von Fehlern über mehrere Datenstücke hinweg,einschließlichder Daten von/an die mehreren Festplattenlaufwerke im ersten undzweiten Gehäuse.Der Cachespeicher führteine Zwischenspeicherung von Daten aus, die in die mehreren Festplattenlaufwerkezu schreiben sind. Die CPU überwachtdie Steuerung überdem Kanal-Steuerabschnitt und den Platten-Steuerabschnitt. Der Controllerliest mehrere DatenstückeeinschließlichDaten, wie sie in den mehreren Festplattenlaufwerken im zweitenGehäusegespeichert sind, und Paritätsdatenfür diemehreren Datenstückeaus allen Festplattenlaufwerken der RAID-Gruppe, zu der die dieDaten speichernden Festplattenlaufwerk gehören, und er untersucht, obdie die Daten enthaltenden mehreren Datenstücke mit fehlerhaftem Inhalt odernicht in die Festplattenlaufwerke geschrieben wurden. [0008] Außerdem verstelltder Controller beim Schreiben von Daten in eines der Festplattenlaufwerkeim zweiten Gehäuseentsprechend der Schreibanforderung von der Informationsverarbeitungsvorrichtungeinen zum Festplattenlaufwerk gehörenden Kopf ausgehend von einerPosition, an der die Daten abgespeichert wurden. Danach liest derController die Daten von einer zum Festplattenlaufwerk gehörenden Magnetplattesowie aus dem Cachespeicher, und er vergleicht die zwei ausgelesenenDatenstücke. [0009] Außerdem bildetder Controller beim Empfangen der Schreibanforderung von der Informationsverarbeitungsvorrichtungzum Einschreiben von Daten in eines der Festplattenlaufwerke imzweiten Gehäuseaus den aus mehreren Sektoren bestehenden Daten eine Dateneinheitauf Grundlage der zu schreibenden Daten sowie Paritätsdatenzum Erkennen von Datenfehlern in den mehreren Sektoren, und er schreibtdie Dateneinheit in das Festplattenlaufwerk. Wenn die Steuerungdie Leseanforderung zum Lesen der Daten von der Informationsverarbeitungsvorrichtungempfängt,liest sie die Dateneinheit, und sie untersucht, ob die Daten mitfehlerhaftem Inhalt oder nicht im Festplattenlaufwerk gespeichertsind. Hierbei ist der erste Schnittstellenstandard z.B. ein Faserkanalstandard. [0010] Derzweite Schnittstellenstandard ist z.B. ein Seriell-ATA-Standard. Der Kommunikationspfadist z.B. ein FC-AL (Fiber Channel-Arbitrated Loop). Außerdem istjede Wandlungseinheit z.B. ein Wandler zum Wandeln eines Faserkanalprotokollsund eines Seriell-ATA-Protokolls ineinander. Außerdem dient jede RAID-Gruppezum Verwalten mehrerer Festplattenlaufwerke als eine Gruppe, wenndie Festplattenlaufwerke überRAID-Konfiguration verfügen.Für jedeRAID-Gruppe werden logische Datenbereiche gebildet, die als Zugriffseinheitenausgehend von der Informationsverarbeitungsvorrichtung dienen. Jedem logischenDatenbereich wird eine als LUN bezeichnete Kennung zugewiesen. Wennvon der Informationsverarbeitungsvorrichtung eine Schreibanforderungzum Schreiben von Daten in einen logischen Datenbereich empfangenwird, schreibt der Platten-Steuerabschnitt die Daten und Paritätsdatenzum Erkennen von Fehlern in den Daten in die die RAID-Gruppe bildendenFestplattenlaufwerke. [0011] Demgemäß können gemäß der Erfindung einPlattenarraysystem und ein Verfahren zum Steuern eines solchen geschaffenwerden. [0012] Diein dieser Beschreibung offenbarten Probleme und Lösungen für diesewerden aus der folgenden detaillierten Beschreibung bevorzugterAusführungsformenin Verbindung mit den beigefügten Zeichnungenbesser ersichtlich werden. [0013] 1A und 1B sindDiagramme, die das Aussehen eines Plattenarraysystems gemäß einerAusführungsformder Erfindung zeigen; [0014] 2A und 2B sindDiagramme, die die Konfiguration eines Mastergehäuses des Plattenarraysystemsgemäß der Ausfüh rungsformzeigen; [0015] 3A und 3B sindDiagramme, die die Konfiguration eines Erweiterungsgehäuses desPlattenarraysystems gemäß der Ausführungsformzeigen; [0016] 4 istein Diagramm, das die Konfiguration eines Festplattenlaufwerks gemäß der Ausführungsformzeigt; [0017] 5 istein Diagramm, das die Konfiguration des Plattenarraysystems gemäß der Ausführungsformzeigt; [0018] 6 istein Diagramm, das den Zustand zeigt, gemäß dem durch eine CPU einesControllers auszuführendeMikroprogramme in einen Speicher gemäß der Ausführungsform eingespeichert wurden; [0019] 7 istein Diagramm, das einen Modus zum Verbinden von. Faserkanal-Festplattenlaufwerkenmit einem Platten-Steuerabschnitt des Controllers gemäß der Ausführungsformzeigt; [0020] 8 istein Diagramm, das einen ersten Modus zum Verbinden von Seriell-ATA-Festplattenlaufwerkenmit dem Platten-Steuerabschnittdes Controllers gemäß der Ausführungsformzeigt; [0021] 9 istein Diagramm, das einen zweiten Modus zum Verbinden von Seriell-ATA-Festplattenlaufwerkenmit dem Platten-Steuerabschnittdes Controllers gemäß der Ausführungsformzeigt; [0022] 10 istein Diagramm, das ein Beispiel zeigt, bei dem Daten in Festplattenlaufwerkegeschrieben werden, die eine RAID-Gruppe gemäß der Ausführungsform bilden; [0023] 11 istein Diagramm, das eine Aktualisierungskontrolltabelle gemäß der Ausführungsform zeigt; [0024] 12 istein Flussdiagramm zum Vergleichen von in einem Cachespeicher abgespeicherten Datenmit in einer Magnetplatte abgespeicherten Daten, wenn Daten gemäß der Ausführungsformgeschrieben werden; [0025] 13 istein Flussdiagramm zum Vergleichen von in einem Cachespeicher abgespeicherten Datenmit in einer Magnetplatte abgespeicherten Daten unter Berücksichtigungder Datengröße, wenn Datengemäß der Ausführungsformgeschrieben werden; [0026] 14 istein Flussdiagramm zum Vergleichen von in einem Cachespeicher abgespeicherten Datenmit in einer Magnetplatte abgespeicherten Daten, wenn im Cachespeicherabgespeicherte Daten in die Magnetplatte gemäß der Ausführungsform geschrieben werden; [0027] 15 istein Diagramm, das eine Kopfprüf-Kontrolltabellegemäß der Ausführungsform zeigt; [0028] 16 istein Flussdiagramm füreine Kopfprüfung,wie sie gemäß der Ausführungsformperiodisch auszuführenist; [0029] 17 istein Flussdiagramm zum Ausführender Kopfprüfung,wenn Daten gemäß der Ausführungsformgelesen werden; [0030] 18 istein Diagramm, das ein Beispiel zeigt, bei dem eine Dateneinheitin ein Festplattenlaufwerk gemäß der Ausführungsformgeschrieben wurde; [0031] 19 istein Diagramm, das ein Beispiel zeigt, bei dem jede Dateneinheit über mehrerePlattenlaufwerke gemäß der Ausführungsformeingeschrieben und verteilt wurde; [0032] 20 istein Diagramm, das eine Dateneinheit-Kontrolltabelle gemäß der Ausführungsform zeigt;und [0033] 21 istein Diagramm, das die Konfiguration eines Plattenarraysystems zeigt,bei dem Faserkanal-Festplattenlaufwerke in einem ersten Gehäuse untergebrachtsind und Seriell-ATA-Festplattenlaufwerke in einem zweiten Gehäuse gemäß der Ausführungsformuntergebracht sind. [0034] Die 1A isteine Vorderansicht eines Plattenarraysystems 10, das alseine Ausführungsform derErfindung beschrieben wird. Die 1B isteine Rückansichtdes Plattenarraysystems 10. Die 2A isteine perspektivische Ansicht eines Mastergehäuses 20, das am Plattenarraysystem 10 anzubringenist, das am Plattenarraysystem 10 anzubringen ist, wobeiman das Mastergehäuse 20 von seinerVorderseite her sieht. Die 2B isteine perspektivische Ansicht des Mastergehäuses 20 von seinerRückseiteher gesehen. Die 3A ist eine perspektivischeAnsicht eines Erweiterungsgehäuses 30,das am Plattenarraysystem 10 anzubringen ist, wobei mandas Erweiterungsgehäuse 30 vonseiner Vorderseite her sieht. Die 3B isteine perspektivische Ansicht des Erweiterungsgehäuses 30 von seinerRückseiteher gesehen. [0035] Wiees in den 1A und 1B dargestellt ist,wird das Plattenarraysystem 10 unter Verwendung eines Rackrahmens 11 alsBasis hergestellt. Montagerahmen 12 sind in mehreren Etagenausgebildet, die oben und unten an der linken und rechten Innenseitenfläche desRackrahmens 11 so angeordnet sind, dass sie sich in denRichtungen nach vorne/nach hinten erstrecken. Das Mastergehäuse 20 unddas Erweiterungsgehäuse 30 sindausziehbar entlang den Montagerahmen 12 montiert. Wie esin den 2A und 2B dargestelltist, sind Platten oder Einheiten zum Bereitstellen verschiedener Funktionenfür dasPlattenarraysystem 10 am Mastergehäuse 20 und am Erweiterungsgehäuse 30 angebracht. [0036] Wiees in der 2A dargestellt ist, sind mehrerePlattenlaufwerkeinheiten 52, in die jeweils ein Festplattenlaufwerk 51 eingebrachtist, parallel in die vordere, obere Etage des Mastergehäuses 20 eingesetzt.Jedes Festplattenlaufwerk 21 ist ein Festplattenlaufwerkmit einer Kommunikationsschnittstelle zum Bereitstellen einer Kommunikationsfunktion entsprechendeinem FC-AL-Standard, einem SCSI1(Small Computer System Interface1)-Standard, einem SCSI2-Standard, einem SCSI3-Standard, einem Parallel-ATA(ATAttachment)-Standard, einem Seriell-ATA-Standard, oder dergleichen. [0037] Indie vordere, untere Etage des Mastergehäuses 20 sind eineBatterieeinheit 53, eine Anzeigetafel 54 zum Anzeigenvon Betriebszuständenusw. der Festplattenlaufwerke 51 sowie ein Diskettenlaufwerk 55 eingesetzt.Die Batterieeinheit 53 verfügt über eine Sekundärbatterie.Die Batterieeinheit 53 hat eine Funktion als Ersatzspannungsversorgung zumLiefern von Spannung an Leiterplatten oder Einheiten, wenn die Spannungsversorgungvon einer AC/DC-Spannungsversorgung 57 aufgrund eines Netzausfallsoder dergleichen stoppt. Die Anzeigetafel 54 ist mit Anzeigevorrichtungenwie LED-Lampen oder dergleichen zum Anzeigen der Betriebszustände usw.der Festplattenlaufwerke 51 versehen. Das Diskettenlaufwerk 55 wirdz.B. zum Laden eines Wartungsprogramms verwendet. [0038] Wiees in der 2B dargestellt ist, sind Spannungsversorger-Controllerplatten 56 anden entgegengesetzten Seitenflä chenin der hinteren, oberen Etage des Mastergehäuses 20 einzeln eingesetzt.Jede Spannungsversorgungs-Controllerplatte 56 ist mit mehrerenFestplattenlaufwerken 51 so verbunden, dass sie mit diesenKommunikationsvorgängeerrichten kann. Z.B. sind die Spannungsversorgung-Controllerplatte 56 unddie mehreren Festplattenlaufwerke 51 so verbunden, dassfür Kommunikationsvorgänge über einenschleifenartigen Kommunikationspfad wie einen solchen, der für Kommunikationin einem FC/AL-System (Topologie) sorgt, gesorgt werden kann. [0039] JedeSpannungsversorgung-Controllerplatte 56 ist mit Schaltkreisenzum Überwachendes Zustands der AC/DC-Spannungsversorgung 57, zum Überwachender Zuständeder Festplattenlaufwerke 51, zum Steuern der Spannungsversorgungder Festplattenlaufwerke 51, zum Steuern der Kühlkapazität einerKühleinheit,zum Steuern der Anzeigevorrichtungen auf der Anzeigetafel 54,zum Überwachen derTemperatur jedes Abschnitts des Gehäuses, usw. versehen. Übrigensist die Kühleinheiteine Einheit zum Kühlendes inneren des Plattenarraysystems 10 oder des Innerendes Gehäuses 20 oder 30.Z.B. ist die Kühleinheitein Interkühler,eine Wärmesenke,ein Kühllüfter vomLuftkühltypoder dergleichen. Die Spannungsversorgung-Controllerplatte 56 ist miteinem Faserkanalkabel-Verbinder 67 versehen, mit dem einFaserkanalkabel 91 verbunden ist. [0040] Wiees in der 2B dargestellt ist, sind zweiAC/DC-Spannungsversorgungen 57 parallel in einem Raum zwischenden zwei Spannungsversorgung-Controllerplatten 56 in derhinteren, oberen Etage des Mastergehäuses 20 angebracht.Jede AC/DC-Spannungsversorgung 57 liefert Spannung an dieFestplattenlaufwerke 51, die Leiterplatten, die Einheitenusw. Die AC/DC-Spannungsversorgung 57 ist mit der Spannungsversorgung-Controllerplatte 56 verbunden,und sie ist so aufgebaut, dass sie Spannung entsprechend einem Signalvon der Spannungsversorgung-Controllerplatte 56 an jedesFestplat tenlaufwerk 51 liefern kann. [0041] Übrigensist diese Ausführungsformso konzipiert, dass zwei Spannungsversorgung-Controllerplatten 56 undzwei AC/DC-Spannungsversorgungen 57 redundantsowohl im Mastergehäuse 20 alsauch im Erweiterungsgehäuse 30 vorhandensind, um für Sicherheithinsichtlich der Spannungsversorgung an jedes Gehäuse 20, 30 zusorgen. Jedoch könnenin jedem Gehäuse 20, 30 eineSpannungsversorgung-Controllerplatte 56 und eine AC/DC-Spannungsversorgung 57 montiertsein. [0042] JedeAC/DC-Spannungsversorgung 57 ist mit einem Unterbrechungsschalter 64 zumEin-/Ausschalten des Ausgangssignals der AC/DC-Spannungsversorgung 57 versehen. [0043] Wiees in der 2B dargestellt ist, sind zweiLuftkühlungs-Lüftereinheiten 58 parallelunter den AC/DC-Spannungsversorgungen 57 angebracht. JedeKühlungslüftereinheit 58 istmit einem oder mehreren Kühllüftern 66 versehen.Die Kühllüfter 66 ermöglichenes, dass Luft in das Gehäuseeinströmt/ausihm ausströmt,um dadurch Wärme,wie sie von den Festplattenlaufwerken 51, den AC/DC-Spannungsversorgungen 57 usw.erzeugt wird, zur Außenseitedes Gehäusesauszugeben. Übrigenssind im Gehäuse 20, 30 Belüftungspfade oderBelüftungslöcher zumUmwälzender Luft durch jedes Mastergehäuse 20/Erweiterungsgehäuse 30 unddaran montierte Leiterplatten oder Einheiten ausgebildet, um einenMechanismus zum effizienten Ausgeben von Wärme im Gehäuse 20, 30 nachaußenmittels der Kühllüfter 66 zubilden. Obwohl Kühllüfter 66 für jedesFestplattenlaufwerk 51 vorhanden sein können, ist es bevorzugt, dassfür jedesGehäusegrößere Kühllüfter 66 vorhandensind, so dass die Anzahl der Chips oder Einheiten verringert werden kann. [0044] JedeKühllüftereinheit 58 istmit einer Controllerplatte 59 oder der Spannungsversorgung-Controllerplatte 56 über eineSteuerleitung verbunden. Die Drehzahl jedes Kühllüfters 66 der Kühllüftereinheit 58 wirddurch die Controllerplatte 59 oder die Spannungsversorgung-Controllerplatte 56 über die Steuerleitunggesteuert. [0045] Wiees in der 6B dargestellt ist, isteine Controllerplatte 59 in die hintere, untere Etage des Mastergehäuses 20 eingesetzt.Die Controllerplatte 59 ist mit einer Kommunikationsschnittstellezu den im Mastergehäuse 20 undden Erweiterungsgehäusen 30 angebrachtenFestplattenlaufwerken 51, Schaltkreisen zum Steuern derBetriebsabläufeder Festplattenlaufwerke 51 (z.B. zum Steuern derselben ineinem RAID-System)oder zum Überwachender Zuständeder Festplattenlaufwerke 51, usw., versehen. [0046] Übrigenssteuern zwar bei dieser Ausführungsformdie Spannungsversorgung-Controllerplatten 56 die Spannungsversorgungfür dieFestplattenlaufwerke 51 oder die Kühlkapazität der Kühleinheiten, jedoch kann dieControllerplatte 59 eine derartige Steuerung ausführen. [0047] DieseAusführungsformverwendet einen Modus, bei dem die Controllerplatte 59 miteiner Kommunikations-Schnittstellenkarte 51 zum Bereitstelleneiner Funktion einer Kommunikationsschnittstelle zu einer Informationsverarbeitungsvorrichtung 300,z.B. einer Kommunikationsfunktion entsprechend einem SCIS-Standardoder einem Faserkanalstandard, einem Cachespeicher 62 zumSpeichern von in die Festplattenlaufwerke 51 zu speichernden Datenoder von aus ihnen auszulesenden Daten, usw., versehen ist. Jedochkönnendiese Funktionen auf einer anderen Leiterplatte untergebracht sein. [0048] Diean der Controllerplatte 59 angebrachte Kommunikations-Schnittstellenplatte 61 istmit einem externen Verbinder 63 zum Herstellen einer Verbindungzur Informationsverarbeitungsvorrichtung 300 versehen.Der externe Verbinder 63 genügt einem vorbestimmten Schnittstellenstandardwie SAN (Storage Area Network), LAN (Local Area Network) oder SCSI,der durch ein Protokoll wie Faserkanal, Ethernet (registrierte Handelsbezeichnung)oder dergleichen gebildet ist. Das Plattenarraysystem 10 ist über einmit dem Verbinder 63 verbundenes Kommunikationskabel 92 mitder Informationsverarbeitungsvorrichtung 300 verbunden. [0049] Übrigenskönnenzwei Controllerplatten 59 redundant im Mastergehäuse 20 angebrachtsein, um fürSicherheit hinsichtlich der Steuerung der Festplattenlaufwerke 51 zusorgen. [0050] Wiees in der 3A dargestellt ist, sind mehrerePlattenlaufwerkseinheiten 52, die Festplattenlaufwerke 51 aufnehmen,parallel an der Vorderseite jedes Erweiterungsgehäuses 30 angebracht. Wiees in der 3B dargestellt ist, sind Spannungsversorgung-Controllerplatten 56 einzelnan den hinteren, entgegengesetzten Seitenflächen des Erweiterungsgehäuses 30 eingesetzt.Außerdemsind zwei AC/DC-Spannungsversorgungen 57 parallel in einemRaum zwischen den zwei Spannungsversorgung-Controllerplatten 56 angebracht.Zusätzlich sindzwei Kühllüftereinheiten 58 parallelunter den AC/DC-Spannungsversorgungen 57 angebracht. JedeAC/DC-Spannungsversorgung 57 ist mit einem Unterbrechungsschalter 64 zumEin-/Ausschalten der Spannung der AC/DC-Spannungsversorgung 57 versehen. [0051] DieseAusführungsformist so konzipiert, dass zwei Spannungsversorgung-Controllerplatten 56 undzwei AC/DC-Spannungsversorgungen 57 redundant in jedemErweiterungsgehäuse 30 vorhandensind, um, wie oben beschrieben, für Sicherheit hinsichtlich derSpannungsversorgung zum Erweiterungsgehäuse 30 zu sorgen.Jedoch könneneine Spannungsversorgung-Con trollerplatte 56 und eine AC/DC-Spannungsversorgung 57 imErweiterungsgehäuse 30 angebrachtsein. Übrigenskönnendie Funktionen der Spannungsversorgung-Controllerplatten 56 zumSteuern der Spannungsversorgung für die Festplattenlaufwerke 51,zum Steuern der Kühlkapazität der Kühleinheitenusw. auf der Controllerplatte 59 vorhanden sein. [0052] Die 4 zeigtein Beispiel fürdie Konfiguration jedes Festplattenlaufwerks 51, wie esin jeder Plattenlaufwerkeinheit 52 aufgenommen ist. Das Festplattenlaufwerk 51 verfügt über einGehäusesowie Magnetplatten 73, Stellglieder 71, einenSpindelmotor 72, Köpfe 74 zumLesen/Schreiben von Daten, eine Mechanismussteuerschaltung 75 zumSteuern von Mechanismusteilen wie den Köpfen 74 und dergleichen,eine Signalverarbeitungsschaltung 76 zum Steuern einesLese/Schreib-Signalsfür Datenvon/in jede Magnetplatte 73, eine Kommunikations-Schnittstellenschaltung 77,einen Schnittstellenverbinder 79 zum Eingeben/Ausgebenverschiedener Befehle oder Daten über ihn sowie einen Spannungsversorgungsverbinder 80,die alle im Gehäuse 70 angeordnetsind. Übrigensist in der Kommunikations-Schnittstellenschaltung 77 einCachespeicher zum Zwischenspeichern von Daten enthalten. Übrigenswird der zum Festplattenlaufwerk 51 gehörende Cachespeicher als Plattencachebezeichnet, um ihn von einem Cachespeicher 62 in einemController 500, der späterbeschrieben wird, zu unterscheiden. [0053] JedesFestplattenlaufwerk 51 ist z.B. eine Speichereinheit, diemit 3,5-Zoll-Magnetplatten vom Contact-Start-Stop(CSS)-Typ, 2,5-Zoll-Magnetplattenvom Lade/Entlade-Typ oder dergleichen versehen ist. Z.B. verfügt jede3,5-Zoll-Magnetplatte über eineKommunikationsschnittstelle gemäß SCSI1, SCSI2,SCSI3, FC-AL oder dergleichen. Andererseits verfügt z.B. jede 2,5-Zoll-Magnetplatte über eineKommunikationsschnittstelle gemäß parallel-ATA,seriell-ATA oder derglei chen. [0054] Wennjede 2,5-Zoll-Magnetplatte im Gehäuse 20, 30 desPlattenarraysystems 10 aufgenommen wird, kann sie in einemBehältermit 3,5-Zoll-Form aufgenommen werden. So kann die Stoßfestigkeitsfunktionder Magnetplatten verbessert werden. Übrigens unterscheiden sicheine 2,5-Zoll-Magnetplatte und eine 3,5-Zoll-Magnetplatte nichtnur hinsichtlich der Kommunikationsschnittstelle voneinander, sondernauch hinsichtlich der I/O-Funktion, des Energieverbrauchs, der Lebensdauerusw. Eine 2,5-Zoll-Magnetplatte ist hinsichtlich der I/O-Funktion einer 3,5-Zoll-Magnetplatteunterlegen, und die Lebensdauer der ersteren ist kürzer alsdie der letzteren. Jedoch ist eine 2,5-Zoll-Magnetplatte einer 3,5-Zoll-Magnetplattedahingehend überlegen,dass der Energieverbrauch der ersteren kleiner als der der letzterenist. [0055] Die 5 istein Blockdiagramm, das die Hardwarekonfiguration des Plattenarraysystems 10 zeigt,das als eine Ausführungsformder Erfindung beschrieben wird. [0056] Wiees in der 5 dargestellt ist, sind Informationsverarbeitungsvorrichtungen 300 über ein SANmit dem Plattenarraysystem 10 verbunden. Die Informationsverarbeitungsvorrichtungen 300 sind z.B.PCs, Workstations, Großrechneroder dergleichen. [0057] DasPlattenarraysystem 10 verfügt über ein Mastergehäuse 20 undeines oder mehrere Erweiterungsgehäuse 30, wie bereitsbeschrieben. Bei dieser Ausführungsformverfügtdas Mastergehäuse 20 über Controller 500,Festplattenlaufwerke 51 usw. Jeder Controller 500 verfügt über Kanal-Steuerabschnitte 501,Platten-Steuerabschnitte 502, eine CPU 503, einenSpei cher 504, einen Cachespeicher 62, einen Datencontroller 505 usw.Der Controller 500 ist an der oben genannten Steuerplatte 59 angebracht.Andererseits verfügtjedes Erweiterungsgehäuse 30 über Festplattenlaufwerke 51 usw.Die Festplattenlaufwerke 51 im Mastergehäuse undin den Erweiterungsgehäusensind übereine FC-AL 506 mit den Platten-Steuerabschnitte 502 verbunden,um fürKommunikation mit diesen sorgen zu können. Übrigens wird der Verbindungsmoduszwischen jedem Platten-Steuerabschnitt 502 und jedem Festplattenlaufwerk 51 später detailliertbeschrieben. [0058] JederKanal-Steuerabschnitt 501 ist eine Schnittstelle zum Errichtenvon Kommunikation mit den Informationsverarbeitungsvorrichtungen 300. DerKanal-Steuerabschnitt 501 verfügt über eine Funktion zum Aufnehmeneiner Blockzugriffsanforderung entsprechend einem Faserkanalprotokoll. [0059] JederPlatten-Steuerabschnitt 502 ist eine Schnittstelle zumAustauschen von Daten mit den Festplattenlaufwerken 51 entsprechendeiner Anweisung von der CPU 503. Der Platten-Steuerabschnitt 502 verfügt über eineFunktion zum Senden einer Daten-Eingabe/Ausgabe-Anforderung an dieFestplattenlaufwerke 51 entsprechend einem Protokoll, in demBefehle usw. zum Steuern der Festplattenlaufwerke 51 festgelegtsind. [0060] DieCPU 503 verwaltet die Steuerung des Plattenarraysystems 10 insgesamt.Die CPU 503 führtim Speicher 504 abgespeicherte Mikroprogramme aus, um dieKanal-Steuerabschnitte 501, die Platten-Steuerabschnitte 502,den Datencontroller 505 usw. zu steuern. Zu den Mikroprogrammengehören einDatenleseprozess 601, ein Datenschreibprozess 602 unddergleichen, wie es in der 6 dargestellt ist. [0061] DerCachespeicher 62 dient zum zeitweiligen Abspeichern vonDaten, wie sie zwischen jedem Kanal-Steuerabschnitt 501 und jedemPlatten-Steuerabschnitt 502 auszutauschen sind. [0062] DerDatencontroller 505 führteine Datenübertragungzwischen jedem Kanal-Steuerabschnitt 501 und dem Cachespeicher 62 oderzwischen diesem und jedem Platten-Steuerabschnitt 502 unter Steuerungdurch die CPU 503 aus. [0063] JederController 500 verfügt über eineFunktion des Steuerns der Festplattenlaufwerke 51 auf RAID-Ebene(z.B. 0, 1 oder 5), entsprechend eine sogenannten RAID(RedundantArray of Inexpensive Disks)-System. Beim RAID-System werden mehrere Festplattenlaufwerke 51 alseine Gruppe verwaltet (nachfolgend als RAID-Gruppe bezeichnet).Logische Datenbereiche, die als Zugriffseinheiten von den Informationsverarbeitungsvorrichtungen 300 dienen,sind in jeder RAID-Gruppe ausgebildet. Eine als LUN (Logical UnitNumber) bezeichnete Kennung ist jedem logischen Datenbereich zugewiesen.Im Speicher 504 ist Information zur RAID-Konfigurationin Form einer RAID-Konfigurationstabelle 603 abgespeichert,wie es in der 6 dargestellt ist. Die CPU 503 nimmtauf die RAID-Konfigurationstabelle 603 Bezug,wennsie den Datenleseprozess 601 oder den Datenschreibprozess 602 ausführt. [0064] Übrigensmuss das Plattenarraysystem z.B. nicht ein System sein, das aufdie oben beschriebene Weise konzipiert ist, sondern es kann einals NAS (Network Attached Storage) dienendes System sein, das sokonzipiert ist, dass es eine Daten-Eingabe/Ausgabe-Anforderung aufGrundlage einer Datennamensspezifizierung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 entsprechendeinem Protokoll wie NFS (Network File System) akzeptiert. [0065] AlsNächsteserfolgt eine Beschreibung zum Verbindungsmodus zwischen jedem Controller 500 undjedem Festplattenlaufwerk 51. [0066] Die 7 zeigteinen Verbindungsmodus zwischen jedem Platten-Steuerabschnitt 502 undjedem Faserkanal-Festplattenlaufwerk 51, wie es im Mastergehäuse 20 untergebrachtist. [0067] JederPlatten-Steuerabschnitt 502 ist über eine FC-AL mit mehrerenFestplattenlaufwerken 51 verbunden. Die FC-AL 506 verfügt über mehrere PBCs(Port Bypass Circuits) 701. Die FaserkanalFestplattenlaufwerken 51 sindjeweils überdie PBCs 701 mit der FC-AL 506 verbunden. JedePBC 701 ist ein als Chip ausgebildeter elektronischer Schalter. DiePBCs 701 verfügenauch übereine Funktion des Umgehens der Platten-Steuerabschnitte 502 oder derFestplattenlaufwerke 51, um sie dadurch elektrisch vonder FC-AL 506 auszuschließen. Genauer gesagt, trennendie PBCs 701, wenn in irgendwelchen Festplattenlaufwerke 51 Fehlerauftreten, die Festplattenlaufwerke 51 von der FC-AL 506,so dass fürKommunikationsvorgängezwischen einem beliebigen anderen Festplattenlaufwerk 51 undjedem Platten-Steuerabschnitt 502 gesorgt werden kann. [0068] Außerdem ermöglichenes die PBCs 701, die Festplattenlaufwerke 51 zuentnehmen und einzusetzen, währendder Betrieb der FC-AL 506 erhalten bleibt. Wenn z.B, einneues Festplattenlaufwerk 51 eingesetzt wird, wird es indie FC-AL 506 eingebaut, damit zwischen dem Festplattenlaufwerk 51 unddem Platten-Steuerabschnitt 502 für Kommunikation gesorgt werdenkann. Übrigenskann eine Leiterplatte der PBCs 701 am Rackrahmen 11 desPlattenarraysystems 10 vorhanden sein, oder sie kann teilweise oderganz an der Controllerplatte 59 oder der Spannungsversorgung-Controllerplatte 56 angebracht sein. [0069] Die 8 zeigteinen Verbindungsmodus zwischen jedem Plat ten-Steuerabschnitt 502 undjedem im Mastergehäuse 20 untergebrachtenSeriell-ATA-Festplattenlaufwerk 51. [0070] JedesFestplattenlaufwerk 51 ist über einen Wandler 801 mitPBCs 602 der FC-AL 506 verbunden. Der Wandler 801 isteine Schaltung zum Wandeln eines Faserkanalprotokolls und einesSeriell-ATA-Protokolls ineinander. Der Wandler 801 bestehtaus einem Chip, in den eine Protokollwandelfunktion eingebaut ist.Der Wandler 801 ist in jeder Plattenlaufwerkeinheit 52 enthalten. [0071] Die 9 entsprichteinem anderen Verbindungsmodus, bei dem Seriell-ATA-Festplattenlaufwerke 51 imMastergehäuse 20 untergebrachtsind. [0072] JederWandler 901 ist eine Schaltung zum Wandeln eines Faserkanalprotokollsund eines Seriell-ATA-Protokolls ineinander, auf dieselbe Weisewie beim Wandler 801 in der 8 Der Wandler 901 ist miteiner PBC 602 einer FC-AL 506 verbunden. MehrereFestplattenlaufwerke 51 sind über jeweilige Schalter 902 mitjedem Wandler 901 verbunden. Die Schalter 902 sindSchaltungen zum Auswähleneines Festplattenlaufwerks 51, mit dem für Kommunikation gesorgtwerden soll, wenn die Festplattenlaufwerke 51 mit mehrerenWandlern 901 verbunden sind. Jeder Schalter 902 istjeder Plattenlaufwerkseinheit 52 vorhanden. Jeder Wandler 901 bestehtaus einem Chip oder mehreren Schaltkreisen, in die eine Protokollwandelfunktioneingebaut ist. Z.B. kann der Wandler 901 durch die Konfigurationeiner SATA-Mastervorrichtung implementiert sein, wie sie in der "US-Patentanmeldungmit der Veröffentlichungs-Nr.2003/0135577" offenbartist. Der Wandler 901 ist auf der Controllerplatte 59,der Spannungsversorgung-Controllerplatte 56 oder dergleichenangebracht. [0073] Nunerfolgt eine Beschreibung zu einem Verfahren zum Verbessern derZuverlässigkeitbeim Lesen von den Festplattenlaufwerken oder beim Schreiben aufdiese im oben beschriebenen Plattenarraysystem 10. [0074] AlsErstes erfolgt eine Beschreibung zu einem Verfahren zum Untersuchen,ob in einem Festplattenlaufwerk 51 von RAID-Konfiguration abgespeicherteDaten in einem falschen Zustand vorliegen oder nicht. Hierbei bedeutetder falsche Zustand einen solchen, bei dem Daten nicht an einenOrt geschrieben sind, wie er durch den Platten-Steuerabschnitt 502 spezifiziertwurde, und nicht mit entsprechend spezifiziertem Inhalt. [0075] Die 10 zeigteinen Zustand, bei dem Daten in Festplattenlaufwerke 51 gemäß RAID-5gespeichert sind. Bei RAID-5 besteht eine RAID-Gruppe 1001 ausmehreren Festplattenlaufwerken 51. Beim Beispiel der 10 sindDaten A-D und ParitätsdatenP (A - D) zum Erkennen von Fehlern in den Daten A - D in den Festplattenlaufwerken 51 gespeichert.Auf dieselbe Weise sind Daten E - H und Paritätsdaten P (E - H) für die DatenE - H abgespeichert. Eine derartige Kombination von Daten und Paritätsdatenwird als Streifengruppe 1002 bezeichnet. Bei einer RAID-Konfigurationmit derartigen darin ausgebildeten Streifengruppen 1002 kannder alle Daten und Paritätsdatender Streifengruppe 1002 lesende Controller 500 untersuchen,ob sich die Daten in einem falschen Zustand befinden oder nicht.Als Erstes liest der Platten-Steuerabschnitt 502, entsprechend einerAnweisung von der CPU 503, die Daten A - D und die ParitätsdatenP (A - D). Als Nächstesführt die CPU 503 eineParitätsprüfung unterVerwendung der Daten A - D und der Parität P (A - D) aus. So kann untersuchtwerden, ob irgendein Stückder Daten A - D in einem falschen Zustand vorliegt oder nicht. [0076] Wenneine Datenleseanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 empfangenwird, kann der Controller 500 alle Daten und Paritätsdatenin einer Streifengruppe einschließlich der zu lesenden Datenlesen. So kann verhindert werden, dass der Controller 500 falsche Datenvon den Festplattenlaufwerken 51 liest und solche falscheDaten an die Informationsverarbeitungsvorrichtung 300 sendet. Übrigenskann die Prüfungauf falsche Daten nicht nur beim Empfangen einer Datenleseanforderungsondern zu jedem beliebigen gewünschtenZeitpunkt erfolgen. Auf solche Weise kann die Erkennung falscherDaten ausgeführt werden,ohne dass sich irgendein Einfluss auf die Datenlesefunktion ergäbe. [0077] Außerdem istes unter Verwendung einer Aktualisierungskontrolltabelle 1101,wie sie in der 11 dargestellt ist, möglich, zuuntersuchen, ob sich die in die Festplattenlaufwerke 51 eingeschriebenenDaten in einem falschen Zustand befinden oder nicht. Die Aktualisierungskontrolltabelle 1101 bestehtaus Laufwerksnummern und Sektornummern, und sie ist im Speicher 504 abgespeichert.Bei dieser Ausführungsformsind die Sektornummern durch die LBA (Logical Block Address) definiert,und sie werden mit Einheiten von 128 LBA verwaltet, wie es durchLBA #1-128 veranschaulicht ist. Übrigens bestehtfür diePackungseinheit der Sektornummern keine Beschränkung auf 128, sondern es kannsich um jede beliebige gewünschteEinheit handeln. Wenn Daten überden Platten-Steuerabschnitt 502 in einFestplattenlaufwerk 51 eingeschrieben werden, ändert dieCPU 503 den Sektorwert des dem Schreibvorgang unterliegendenFestplattenlaufwerks 51 in der Aktualisierungskontrolltabelle 1101 auf "1". Die CPU 503 liest, über denPlatten-Steuerabschnitt 502, alle Daten und Paritätsdateneiner Streifengruppe einschließlichdes Zielsektors des Festplattenlaufwerks 51, wie als "1" in der Aktualisierungskontrolltabelle 1101 abgespeichert,und sie führteine Paritätsprüfung aus.Wenn die gelesenen Daten nicht falsch sind, ändert die CPU 503 denWert des Sektors in der Aktualisierungskontrolltabelle 1101 auf "0". Wenn die CPU 503 eine Datenleseanforderungvon irgendeiner der Informationsverarbeitungsvorrichtungen 300 über denKanal-Steuerabschnitt 501 empfängt, nimmt sie auf die Aktualisierungskontrolltabelle 1101 Bezug,und sie klärt,ob ein die zu lesenden Daten speichernder Sektor untersucht wurdeoder nicht. Wenn der die Daten speichernde Sektor nicht untersuchtwurde, untersucht die CPU 503 Daten einer die zu lesendenDaten enthaltenden Streifengruppe entsprechend der oben genanntenProzedur. Auf solche Weise wird eine Untersuchung an den in jedesFestplattenlaufwerk 51 eingeschriebenen Daten vor dem Empfangeiner Leseanforderung zum Lesen der Daten ausgeführt. So kann verhindert werden,dass sich die Datenlesefunktion verschlechtert. Außerdem wird dernoch fehlende Abschluss der Prüfungin der Aktualisierungskontrolltabelle 1101 abgespeichert,und es wird eine Paritätsprüfung ausgeführt, wennnicht untersuchte Daten gelesen werden. So kann verhindert werden,dass falsche Daten gelesen werden. [0078] AlsNächsteserfolgt eine Beschreibung zu einem Verfahren zum Untersuchen, obDaten korrekt geschrieben werden oder nicht, wenn sie in ein Festplattenlaufwerk 51 geschriebenwerden. [0079] Die 12 istein Flussdiagramm, das die Kontrolle durch die CPU 503 zeigt,wenn der Controller 500 Daten in ein Festplattenlaufwerk 51 schreibt. Wenndie CPU 503 eine Datenschreibanforderung von irgendeinerder Informationsverarbeitungsvorrichtungen 300 über denKanal-Steuerabschnitt 501 empfängt, sendet sie eine Anweisungzum Schreiben der Daten in ein Festplattenlaufwerk 51 anden Platten-Steuerabschnitt 502 (S1201). Dann sendet die CPU 503 eineAnweisung zum Ausführeneines Suchprozesses zum Verstellen der Position eines Kopfs einerMagnetplatte, wenn die Daten geschrieben wurden, an den Platten-Steuerabschnitt (S1202).Als Nächstesliest die CPU 503 die Daten aus dem Cachespeicher 62 (S1203),und sie liest die Daten von der Magnetplatte (S1204). Die CPU 503 vergleichtdie Daten vom Cachespeicher 62 und diejenigen von der Magnetplatte,um zu untersuchen, ob sie miteinander übereinstimmen (S1205). Wenndie zwei Datenstückenicht miteinander übereinstimmen, informiertdie CPU 503 die Informationsverarbeitungsvorrichtung 300 über dieTatsache, dass der Schreibvorgang nicht normal ausgeführt wurde (S1206). [0080] Wenndie in der Magnetplatte abgespeicherten Daten auf diese Weise mitden im Cachespeicher 62 abgespeicherten Daten verglichenwerden, ist es möglich,zu klären,ob die Daten korrekt in die Magnetplatte geschrieben wurden odernicht. Außerdem überlebendie Daten selbst dann, wenn sich die geschriebenen Daten in einemfalschen Zustand befinden, im Cachespeicher 62. So bestehtkeine Gefahr, dass die Daten verloren gehen. Übrigens ist es dann, wenn einzu einem Festplattenlaufwerk mit einer Magnetplatte gehörender Kopfdurch einen Suchprozess oder dergleichen verstellt wird, bevor zuvergleichende Daten von der Magnetplatte und aus dem Cachespeicher 62 gelesenwurden, möglich,zu verhindern, dass der Kopf zweimal an ein und derselben Positionliest, wenn die Position beim Schreiben falsch ist. [0081] Beider Verarbeitung gemäß der 12 werdenalle geschriebenen Daten aus dem Cachespeicher 62 und vonder Magnetplat te gelesen, und die zwei Datenstücke werden zum Untersuchender Daten verglichen. Jedoch müssennicht alle Daten gelesen und verglichen werden, sondern es reicht,einen Teil der Daten, z.B. ein Segment am Kopf der Daten und einSegment am Ende derselben zu lesen und zu vergleichen. Z.B. werdenumfangreiche Daten (sequenzielle Daten) häufig in Seriell-ATA-Festplattenlaufwerkeeingeschrieben, da sie fürAnwendungen wie Datenbackup verwendet werden. In einem derartigenFall wird das Funktionsvermögenbei der Schreibverarbeitung auffälligbeeinträchtigt,wenn in einer Magnetplatte gespeicherte Daten für alle geschriebenen Datenmit im Cachespeicher 62 gespeicherten Daten verglichenwerden. Außerdemist es dann, wenn hinsichtlich der Schreibposition oder dergleichenein Fehler auftritt, wenn sequenzielle Daten geschrieben werden,hoch wahrscheinlich, dass alle Daten falsch sind. Daher kann inden meisten Fällen dieBeurteilung dahingehend, ob die Daten falsch sind oder nicht, dadurcherfolgen, dass ein Teil der Daten untersucht wird. D.h., dass dann,wenn füreinen Teil geschriebener Daten, z.B. ein Segment am Kopf der Datenund ein Segment am Ende der Daten, ein Vergleich ausgeführt wird,die Möglichkeitbesteht, falsche Daten zu prüfen,währendverhindert wird, dass das Funktionsvermögen bei der Schreibverarbeitungbeeinträchtigtwird. [0082] Alternativkann das Verfahren zum Untersuchen von in das Festplattenlaufwerk 51 geschriebenenDaten entsprechend der Größe der Datengeändertwerden. Die 13 ist ein Flussdiagramm, das dieVerarbeitung zum Änderndes Untersuchungsverfahrens abhängigdavon, ob geschriebene Daten sequenzielle Daten sind oder nicht,zeigt. Die CPU 503 sendet eine Anweisung zum Schreibenvon Daten in ein Festplattenlaufwerk 51 an den Platten-Steuerabschnitt 502 (S1301).Dann sendet die CPU 503 eine Anweisung zum Ausführen einesSuchprozesses zum Verstellen der Position des Kopfs der Magnetplatte,wo die Daten geschrieben wurden, an den Platten-Steuerabschnitt(S1302). Die CPU 503 beurteilt, ob die Daten sequenzielleDaten sind oder nicht (S1303). Übrigenswird die Beurteilung dahingehend, ob die Daten sequenzielle Datensind oder nicht, auf Grundlage davon ausgeführt, ob die Größe der geschriebenenDaten eine vorbestimmte Größe erreicht odernicht. [0083] Wenndie Daten sequenzielle Daten sind, liest die CPU 503 einSegment am Kopf derselben sowie ein Segment am Ende derselben vomCachespeicher 62 und der Magnetplatte. Wenn die Daten dagegenkeine sequenziellen Daten sind, liest die CPU 503 alleDaten vom Cachespeicher 62 und der Magnetplatte (S1306und S1307). Danach vergleicht die CPU 503 die zwei Stücke gelesenerDaten miteinander, und sie untersucht, ob sie miteinander übereinstimmen(S1308). Wenn sie nicht übereinstimmen,informiert die CPU 503 die Informationsverarbeitungsvorrichtung 300 über dieTatsache, dass der Schreibvorgang nicht normal ausgeführt wurde (S1309). [0084] Wenndie geschriebene Daten sequenzielle Daten sind, erfolgt zwischenin der Magnetplatte gespeicherten Daten und im Cachespeicher 62 gespeichertenDaten auf solche Weise ein Vergleich hinsichtlich eines Teils derDaten. So ist es möglich,die Inkorrektheit von Daten zu erkennen, während ein Absinken des Funktionsvermögens beider Schreibverarbeitung unterdrücktist. Wenn dagegen die geschriebenen Daten keine sequenziellen Datensind, erfolgt zwischen in der Magnetplatte gespeicherten Daten undim Cachespeicher 62 gespeicherten Daten ein Vergleich hinsichtlichaller geschriebenen Daten. So ist es möglich, eine Inkorrektheit vonDaten perfekt zu erkennen, ohne dass das Funktionsvermögen beider Schreibverarbeitung so auffälligabnimmt, wie im Fall sequenzieller Daten. [0085] Umdas Funktionsvermögenbeim Schreiben von Daten zu verbessern, kann jedes Festplattenlaufwerk 51 über eineFunktion wie folgt verfügen. Wennnämlichdas Festplattenlaufwerk 51 eine Datenschreibanforderungvom Controller 500 empfängt, schreibtes die Daten nur in den Plattencache, und es informiert den Controller 500 über denAbschluss des Schreibvorgangs. In diesem Fall können beim mittels der 12 und 13 beschriebenenVerfahren die geschriebenen Daten nicht untersucht werden. Die 14 istein Flussdiagramm zur Verarbeitung zur Untersuchung geschriebenerDaten, wenn das Festplattenlaufwerk 51 über eine derartige Funktionverfügt.Die CPU 503 überwachtdas Festplattenlaufwerk 51 dahingehend, ob die Anzahl derSchreibvorgängein das Festplattenlaufwerk 51 eine vorbestimmte Anzahl überschrittenhat oder nicht (S1401). Wenn die vorbestimmte Anzahl überschrittenist, gibt die CPU 503 überden Platten-Steuerabschnitt 502 eine Anweisung zum Schreibender im Plattencache abgespeicherten Daten in eine Magnetplatte andas Festplattenlaufwerk (S1402). Dann liest die CPU 503 dieDaten vom Cachespeicher 62 und von der Magnetplatte (S1403und S1404). Die CPU 503 klärt, ob die Daten vom Cachespeicher 62 unddiejenigen von der Magnetplatte übereinstimmenoder nicht (S1405). Wenn sie nicht übereinstimmen, informiert dieCPU 503 die Informationsverarbeitungsvorrichtung 300 über dieTatsache, dass der Schreibvorgang nicht normal ausgeführt wurde(S1406). So kann Inkorrektheit von Daten trotz der Verwendung deroben genannten Funktion des Verbesserns des Funktionsvermögens beider Schreibverarbeitung erkannt werden. Übrigens werden bei der Verarbeitunggemäß der 14 indie Magnetplatte geschriebene Daten und in den Cachespeicher geschriebeneDaten verglichen, wenn die Anzahl der Schreibvorgänge eine vorbestimmteAnzahl überschreitet.Jedoch kann die Untersuchung immer dann vorgenommen werden, wenneine vorbestimmte Zeit verstrichen ist, oder immer dann, wenn derPlattencache überkeinen freien Raum verfügt. [0086] ImFall eines Seriell-ATA-Festplattenlaufwerks 51 werden Datenhäufigaufgrund eines Ausfalls seines Kopfs inkorrekt geschrieben. Dahererfolgt eine Beschreibung zu einem Verfahren zum Erkennen des Ausfallseines Kopfs oder eines Festplattenlaufwerks 51, wenn Datenaus diesem gelesen werden. [0087] Die 15 istein Diagramm, das eine Kopfprüf-Kontrolltabelle 1501 zeigt.Die Kopfprüf-Kontrolltabelle 1501 bestehtaus Laufwerksnummern, Kopfnummern und Sektornummern, und sie istim Speicher 504 abgespeichert. Jede Sektornummer ist auf dieselbeWeise wie in der Aktualisierungskontrolltabelle 1101 durcheine LBA definiert. Wenn Daten überden Platten-Steuerabschnitt 502 indas Festplattenlaufwerk 51 eingeschrieben werden, ändert dieCPU 503 den Wert "Vorliegenvon Aktualisierung" desSektors des Kopfs, mit dem die Daten geschrieben wurden, in derKopfprüf-Kontrolltabelle 1501 auf "1". [0088] Die 16 istein Flussdiagramm der durch die CPU 503 auszuführendenKopfprüfverarbeitung. DieCPU 503 stellt 1 als Anfangswert einer Untersuchungskopfnummerein (S1601). Die CPU 503 wartet eine vorbestimmte Zeit(S1602), und sie schreibt unter Verwendung eines durch die Untersuchungskopfnummerspezifizierten Kopfs Untersuchungsdaten in einen Steuerblock einerMagnetplatte (1603). Übrigensist der Steuerblock ein vorbestimmter Speicherbereich auf der Magnetplatte.Als Nächstesliest die CPU 503 die in den Steuerblock geschriebenenDaten (S1604), und sie klärt,ob die gelesenen Daten und die Untersuchungsdaten miteinander übereinstimmenoder nicht (S1605). [0089] Wenndie zwei Datenstückemiteinander übereinstimmen,schließtdie CPU 503, dass keine Anormalität im Kopf be steht, und sie ändert denWert von "Vorliegeneiner Aktualisierung" für den Kopfin der Kopfprüf-Kontrolltabelle 1501 auf "0" (S1606). Die CPU 503 addiert1 zur Untersuchungskopfnummer (S1607). Die CPU 503 klärt, ob dieUntersuchungskopfnummer größer alsein Maximalwert für dieKopfnummer ist oder nicht (S1608). Wenn die Untersuchungskopfnummergrößer ist,stellt die CPU 503 1 als Untersuchungskopfnummer ein. DieCPU 503 führtdie Kopfprüfverarbeitungwiederholt auf die eingestellte Kopfnummer hin aus. [0090] Wenndie aus dem Steuerblock gelesenen Daten nicht mit den Untersuchungsdaten übereinstimmen,informiert die CPU 503 die Informationsverarbeitungsvorrichtung 300 über dieTatsache, dass im fraglichen Festplattenlaufwerk 51 eineAnormalität auftritt,und dann beendet sie die Verarbeitung. [0091] Die 17 istein Flussdiagramm einer Verarbeitung, wenn die CPU 503 eineDatenleseanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 empfängt. DieCPU 503 empfängtdie Datenleseanforderung von der Informationsverarbeitungsvorrichtung 300 über denKanal-Steuerabschnitt 501 (S1701). Die CPU 503 klärt den Wertvon "Vorliegen einerAktualisierung" eines Zielsektorseines Festplattenlaufwerks 51, wo die Daten in der Kopfprüf-Kontrolltabelle 1501 gespeichertsind (S1702 und S1703). Ein "Vorliegeneiner Aktualisierung" vomWert "1" zeigt den Zustandan, bei dem die oben genannte Kopfprüfverarbeitung nicht ausgeführt wurde,obwohl ein Datenschreibvorgang an der LBA des fraglichen Festplattenlaufwerks 51 ausgeführt wurde.Wenn der Wert von "Vorliegen einerAktualisierung" "0" ist, liest die CPU 503 dieDaten vom Festplattenlaufwerk 51 (S1708). [0092] Wennder Wert von "Vorliegeneiner Aktualisierung" "1" ist, schreibt die CPU 503 Untersuchungsdatenunter Verwendung des fraglichen Kopfs auf dieselbe Weise wie beider oben genann ten Kopfprüfverarbeitungin einen Steuerblock einer Magnetplatte (S1704). Übrigensist der Steuerblock ein vorbestimmter Speicherbereich auf der Magnetplatte. AlsNächstesliest die CPU 503 die in den Steuerblock geschriebenenDaten (S1705), und sie klärt,ob die gelesenen Daten mit den Untersuchungsdaten übereinstimmenoder nicht (S1706). [0093] Wenndie zwei Datenstückemiteinander übereinstimmen,schließtdie CPU 503, dass im Kopf keine Anormalität existiert,und sie ändertden Wert von "Vorliegeneiner Aktualisierung" für den Kopfin der Kopfprüf-Kontrolltabelle 1501 auf "0" (S1707). Dann liest die CPU 503 dieangeforderten Daten entsprechend der Leseanforderung vom Festplattenlaufwerk 51 (S1708). [0094] Wenndie vom Steuerblock gelesenen Daten nicht mit den Untersuchungsdaten übereinstimmen, informiertdie CPU 503 die Informationsverarbeitungsvorrichtung 300 über dieTatsache, dass im fraglichen Festplattenlaufwerk 51 eineAnormalität vorliegt(S1709), und dann beendet die CPU 503 die Verarbeitungohne die Daten vom Festplattenlaufwerk 51 zu lesen. [0095] Aufsolche Weise ist es möglich,wenn in das Festplattenlaufwerk 51 geschriebene Daten gelesen werden,zu klären,ob der Kopf, mit dem die Daten geschrieben wurden, normal arbeitetoder nicht. Wenn der Kopf anormal ist, besteht die Möglichkeit, dassdie Daten nicht korrekt geschrieben wurden, oder es besteht dieMöglichkeit,dass die Daten nicht korrekt gelesen werden können. Durch Erkennen einerAnormalitätim Kopf beim Lesen von Daten ist es möglich, zu verhindern, dassfalsche Daten gelesen werden. [0096] Gemäß dem obengenannten Verfahren, bei dem alle Daten einer Streifengruppe inder RAID-Konfiguration gelesen und einer Paritätsprüfung unterzogen werden, istes nicht möglich,zu ermitteln, welche Daten der Streifengruppe in einem falschenZustand vorliegen. Es ist tatsächlichmöglich,zu verhindern, dass falsche Daten gelesen werden, jedoch ist esnicht möglich,falsche Daten wiederherzustellen. Demgemäß können Daten verloren gehen.Daher erfolgt eine Beschreibung zu einem Verfahren zum Zuweisenvon Paritätsdatenzu jedem Datenstückgesondert von Paritätsdateninnerhalb der Streifengruppe. [0097] DieCPU 503 erzeugt Paritätsdatenzum Erkennen von Fehlern fürmehrere Sektoren, die als Minimaleinheit dienen, gemäß der Datenin jedes Festplattenlaufwerk 51 geschrieben werden. Beidieser Ausführungsformwird eine Kombination von Daten und Paritätsdaten für derartige mehrere Sektorenals Dateneinheit bezeichnet. Wenn die CPU 503 eine Datenschreibanforderungvon irgendeiner der Informationsverarbeitungsvorrichtungen 300 über denKanal-Steuerabschnitt 501 empfängt, erzeugt sie aus den zuschreibenden Daten eine Dateneinheit. Die CPU 503 schreibtdie Dateneinheit überdie Platten-Steuereinheit 502 in das Festplattenlaufwerk 51. [0098] Die 18 istein Diagramm, das den Zustand zeigt, wenn ein Datenstück 1801 inein Festplattenlaufwerk geschrieben wird. Die Daten 1801 bestehenaus mehreren Sektoren S#1 bis S#4, und aus den Daten 1801 undParitätsdaten 1802 für die Daten 1801 dermehreren Sektoren wird eine Dateneinheit 1803 gebildet.Wenn die CPU 503 eine Datenleseanforderung von irgendeinerder Informationsverarbeitungsvorrichtungen 300 über denKanal-Steuerabschnitt 501 empfängt, liest sie die Dateneinheit 1803 derangeforderten Daten überden Platten-Steuerabschnitt 502,und sie führtan den Daten eine Paritätsprüfung aus,um zu untersuchen, ob sie sich in einem falschen Zustand befindenoder nicht. Auf diese Weise ist es nur durch Lesen der zu lesendenDaten auf die Leseanforderung hin möglich, zu beurteilen, ob sichdie Daten in einem falschen Zustand befinden oder nicht. Außerdem können, wenndie Festplattenlaufwerke 51 über eine redundante RAID-Konfiguration,wie RAID 5, verfügen, dieDaten unter Verwendung anderer Daten und Paritätsdaten in der Streifengruppewiederhergestellt werden. So besteht keine Gefahr, dass die Datenverloren gehen. [0099] Wennein Ausfall eines Kopfs oder dergleichen in einem Festplattenlaufwerk 51 auftritt,ist es hoch wahrscheinlich, dass mehrere falsche Sektoren auftreten.Es sei angenommen, dass mehrere Sektoren der Dateneinheit 1803 falschwerden, wenn die Dateneinheit 1803 in ein Festplattenlaufwerk 51 eingeschriebenwird. Bei einem derartigen Ereignis besteht der Fall, dass Inkorrektheitnicht durch eine Paritätsprüfung erkanntwerden kann. [0100] Daherkann, wie es in der 19 dargestellt ist, die CPU 503 dieDateneinheit 1803 zwischen mehreren Festplattenlaufwerken 51 innerhalbder RAID-Gruppe mittels des Platten-Steuerabschnitts 502 schreibenund verteilen. Die 20 ist ein Diagramm, das eineDateneinheit-Kontrolltabelle 2001 zeigt. Die Dateneinheits-Kontrolltabelle 2001 zeigt dieEntsprechung von Dateneinheiten 1803 aus jeweils mehrerenSektoren mit LBAs von Festplattenlaufwerken 51. Das Beispielder 20 zeigt, dass eine aus 130 Sektoren000 - 129 bestehende Dateneinheit 1803 durch LBAs 000 -064 von Festplattenlaufwerken 51 gebildet wird, deren Laufwerksnummern#0 und #1 sind. Wenn die CPU 503 die Datenschreibanforderungvon irgendeiner der Informationsverarbeitungsvorrichtungen 300 empfängt, nimmt sieauf die Dateneinheits-Kontrolltabelle 2001 Bezug, und sieschreibt und verteilt jede Dateneinheit 1803 der angefordertenDaten übermehrere Festplattenlaufwerke 51. [0101] Demgemäß ist esselbst dann, wenn in einem Festplattenlaufwerk ein Fehler auftritt,möglich, dieWahrscheinlichkeit zu erhöhen,dass Inkorrektheit der Daten erkannt werden kann. [0102] AlsNächsteserfolgt eine Beschreibung zu einem Plattenarraysystem 10,bei dem Faserkanal-Festplattenlaufwerke 51 und Seriell-ATA-Festplattenlaufwerke 51 gemischtsind. [0103] Die 21 istein Blockdiagramm, das ein Plattenarraysystem zeigt, bei dem Faserkanal-Festplattenlaufwerke 51 ineinem ersten Gehäuse 2101 aufgenommensind und Seriell-ATA-Festplattenlaufwerke 51 ineinem zweiten Gehäuse 2102 aufgenommensind. Übrigensentsprechen das erste und das zweite Gehäuse 2101 und 2102 demMastergehäuse 20 bzw.dem Erweiterungsgehäuse 30.Jedes Festplattenlaufwerk 51 ist im oben beschriebenenModus mit dem Platten-Steuerabschnitt 502 verbunden. Außerdem zeigtdie 19 einen Modus, bei dem mehrere Seriell-ATA-Festplattenlaufwerkemit einem Wandler 901 verbunden sind. Jedoch kann jedesSeriell-ATA-Festplattenlaufwerk mit einem Wandler 801 verbundensein, der, wie oben beschrieben, für jede Plattenlaufwerkseinheitvorhanden ist. [0104] Beimauf diese Weise konfigurierten Plattenarraysystem 10 istes erforderlich, die Zuverlässigkeitder Seriell-ATA-Festplattenlaufwerke 51 zuerhöhen,deren Zuverlässigkeitniedriger als die der Faserkanal-Festplattenlaufwerke 51 ist.Daher wendet der Controller 500 das oben genannte Verfahrenzum Verbessern der Zuverlässigkeitnur der Seriell-ATA-Festplattenlaufwerke 51 an.Demgemäß kann dieZuverlässigkeitbeim Lesen/Schreiben von Daten von den/in die Seriell-ATA-Festplattenlaufwerke 51 verbessertwerden, ohne dass das Funktionsvermögen beim Lesen/Schreiben vonDaten aus den/in die Seriell-ATA-Festplattenlaufwerke 51 verbessertwerden, ohne dass das Funktionsvermögen beim Lesen/Schreiben vonDaten von den/in die Faserkanal-Festplattenlaufwerke 51,die zur Verarbeitung wie einer wesentlichen Arbeit, die über hohes Zugriffsfunktionsvermögen verfügen muss,gesenkt würde.Außerdemist es nicht erforderlich, den körperlichenAufbau zu ändern,z.B. zwei Köpfefür jede Magnetplattejedes Seriell-ATA-Festplattenlaufwerks 51 anzubringen.Daher ist es möglich,die Herstellkosten der Seriell-ATA-Festplattenlaufwerke 51 niedrigzu halten. [0105] Übrigenssind bei dieser Ausführungsform dieFaserkanal-Festplattenlaufwerke 51 unddie Seriell-ATA-Festplattenlaufwerke 51 gemischt vorhanden.Jedoch könnenandere Festplattenlaufwerke 51 verwendet werden, wenn siezu Schnittstellenstandards mit verschiedenen Zuverlässigkeitengehören.. Z.B.könnendie Seriell-ATA-Festplattenlaufwerke 51 durch Parallel-ATA-Festplattenlaufwerke 51 ersetzt werden. [0106] DieAusführungsformenwurden oben beschrieben, um die Erfindung leicht verständlich zu machen.Die Erfindung soll nicht als auf die Ausführungsformen beschränkt interpretiertwerden. Die Erfindung kann geändertoder modifiziert werden, ohne dass von ihrem Schutzumfang und Grundgedanken abgewichenwürde.Jedes Äquivalentzur Erfindung ist ebenfalls in dieser enthalten. Außerdem wirddie beim japanischen Patentamt am 28. November 2003 eingereichtejapanische Patentanmeldung Nr. 2003-400517 zum Stützen derErfindung genannt, und deren Offenbarung wird hier durch Bezugnahme eingeschlossen.
权利要求:
Claims (20) [1] Plattenarraysystem mit: – einem ersten Gehäuse zumAufnehmen einer oder mehrerer RAID-Gruppen aus jeweils mehrerenFestplattenlaufwerken zum Senden/Empfangen von Daten entsprechendeinem ersten Schnittstellenstandard, wobei die Festplattenlaufwerken über einen Kommunikationspfadmiteinander verbunden sind; – einem zweiten Gehäuse zumAufnehmen einer oder mehrerer RAID-Gruppen aus jeweils mehreren Festplattenlaufwerkenzum Senden/Empfangen von Daten entsprechend einem zweiten Schnittstellenstandard,wobei die Festplattenlaufwerken überden Kommunikationspfad mittels mehrerer Wandlungseinheiten zum Wandelndes ersten und des zweiten Schnittstellenstandards ineinander verbundensind, wobei diese Festplattenlaufwerke über geringere Zuverlässigkeitals die im ersten Gehäuseuntergebrachten Festplattenlaufwerke verfügen; und – einemController mit einem Kanal-Steuerabschnitt, einem Platten-Steuerabschnitt,einem Cachespeicher und einer CPU, wobei der Kanal-Steuerabschnittso mit einer Informationsverarbeitungsvorrichtung verbunden ist,dass er mit dieser in Kommunikation treten kann und Anforderungenvon ihr empfangen kann, zu denen eine Leseanforderung zum Lesenvon Daten von den Festplattenlaufwerken im ersten oder zweiten Gehäuse undeine Schreibanforderung zum Schreiben von Daten in die Festplattenlaufwerkeim ersten oder zweiten Gehäusegehören,wobei der Platten-Steuerabschnitt mit den mehreren Festplattenlaufwerkenim ersten und zweiten Gehäuse über denKommunikationspfad so verbunden ist, dass er für Kommunikation mit den mehrerenFestplattenlaufwerken im ersten und zweiten Gehäuse sorgen kann und eine Eingabe/Ausgabevon Daten und Paritätsdatenaus den/in die mehreren Festplattenlaufwerke im ersten und zweitenGehäuseentsprechend der vom Kanal-Steuerabschnitt empfangenen Leseanforderungoder Schreibanforderung ausführenkann, wobei die Paritätsdaten Datenzum Erkennen von Fehlern übermehrere Datenstücke einschließlich derDaten von den/an die mehreren Festplattenlaufwerke im ersten undzweiten Gehäuse sind,wobei der Cachespeicher eine Zwischenspeicherung von in die mehrerenFestplattenlaufwerke einzuschreibenden Daten ausführt undwobei die CPU die Steuerung überden Kanal-Steuerabschnitt und den Platten-Steuerabschnitt verwaltet; – wobeider Controller mehrere Datenstückeeinschließlichin den mehreren Festplattenlaufwerken im zweiten Gehäuse gespeichertenDaten und Paritätsdatenfür diemehreren Datenstückevon allen Festplattenlaufwerken der genannten RAID-Gruppe, zu der diedie Daten speichernden Festplattenlaufwerke gehören, liest und untersucht,ob die mehreren Datenstücke,die diese Daten enthalten, mit fehlerhaftem Inhalt oder nicht indie Festplattenlaufwerke geschrieben wurden. [2] Plattenarraysystem nach Anspruch 1, bei dem der Controllervon der Informationsverarbeitungsvorrichtung die Leseanforderungzum Lesen von in einem der Festplattenlaufwerke im zweiten Gehäuse gespeichertenDaten empfängtund dann die Untersuchung an diesen Daten ausführt. [3] Plattenarraysystem nach Anspruch 1, bei dem der Controllerdie Prüfungan den in den mehreren Festplattenlaufwerken im zweiten Gehäuse gespeichertenDaten unabhängigvon der genannten Leseanforderung von der Informationsverarbeitungsvorrichtungausführt. [4] Plattenarraysystem nach Anspruch 1, bei dem: – der Controllerin einer Aktualisierungskontrolltabelle eine Position speichert,an der in eines der Festplattenlaufwerke im zweiten Gehäuse entsprechend dergenannten Schreibanforderung von der Informationsverarbeitungsvorrichtungeingeschriebene Daten in das Festplattenlaufwerk geschrieben wurden; – der Controllerdie Untersuchung an den an der genannten, in der Aktualisierungskontrolltabellegespeicherten Position gespeicherten Daten ausführt und in der AktualisierungskontrolltabelleInformation speichert, die den Abschluss der genannten Untersuchunganzeigt, die an den an dieser Position gespeicherten Daten ausgeführt wurde;und – derController von der Informationsverarbeitungsvorrichtung die genannteLeseanforderung zum Lesen von in einem der Festplattenlaufwerkeim zweiten Gehäusegespeicherten Daten empfängt,dann auf die Aktualisierungskontrolltabelle Bezug nimmt und diegenannte Untersuchung an den Daten ausführt, wenn diese Untersuchungnoch nicht an diesen Daten ausgeführt wurde. [5] Plattenarraysystem nach Anspruch 1, bei dem der ControllerDaten entsprechend der genannten Schreibanforderung von der Informationsverarbeitungsvorrichtungin eines der Festplattenlaufwerke im zweiten Gehäuse schreibt, dann einen zudiesem Festplattenlaufwerk gehörendenKopf von einer Position, an der die Daten gespeichert wurden, bewegt, danachdie Daten von einer zu diesem Festplattenlaufwerk gehörenden Magnetplatteund vom Cachespeicher liest und die zwei ausgelesenen Datenstücke vergleicht. [6] Plattenarraysystem nach Anspruch 1, bei dem der ControllerDaten entsprechend der Schreibanforderung von der Informationsverarbeitungsvorrichtungin eines der Festplattenlaufwerke im zweiten Gehäuse schreibt, dann einen zudiesem Festplattenlaufwerk gehörendenKopf von einer Position, an der die Daten gespeichert wurden, bewegt,danach einen Teil der Daten von einer zu diesem FestplattenlaufwerkgehörendenMagnetplatte und vom Cachespeicher liest und die zwei ausgelesenenDatenstückevergleicht. [7] Plattenarraysystem nach Anspruch 1, bei dem: – der ControllerDaten in eines der Festplattenlaufwerke im zweiten Gehäuse entsprechendder Schreibanforderung von der Informationsverarbeitungsvorrichtungschreibt und dann einen zu diesem Festplattenlaufwerk gehörenden Kopfvon einer Position, an der die Daten gespeichert wurden, bewegt; und – der Controllerdanach die Daten von einer zu diesem Festplattenlaufwerk gehörenden Magnetplatte undvom Cachespeicher liest und die zwei ausgelesenen Datenstücke vergleicht,wenn die Größe der Datenkleiner als ein vorbestimmter Wert ist, oder er einen Teil der Datenvon der Magnetplatte und vom Cachespeicher liest und die zwei ausgelesenenDatenstückevergleicht, wenn die Größe der genannten Datennicht kleiner als ein vorbestimmter Wert ist. [8] Plattenarraysystem nach Anspruch 1, bei dem dann,wenn die Anzahl von Schreibanforderungen von der Informationsverarbeitungsvorrichtungfür einesder Festplattenlaufwerke im zweiten Gehäuse eine vorbestimmte Anzahl überschreitet,der Controller in einem zu diesem Festplattenlaufwerk gehörenden Plattencacheabgespeicherte Daten in eine zu diesem Festplattenlaufwerk gehörende Magnetplatte schreibt,die genannten Daten von der Magnetplatte und vom zum ControllergehörendenCachespeicher liest und die zwei ausgelesenen Datenstücke vergleicht. [9] Plattenarraysystem nach Anspruch 1, bei dem der Controllerin einem zu jedem der genannten Festplattenlaufwerke im zweitenGehäusegehörenden Plattencachegespeicherte Daten in eine zum genannten Festplattenlaufwerk gehörende Magnetplatteschreibt, die Daten von der genannten Magnetplatte und vom zum ControllergehörendenCachespeicher liest und die zwei ausgelesenen Datenstücke vergleicht,was immer dann erfolgt, wenn eine vorbestimmte Zeit verstrichenist. [10] Plattenarraysystem nach Anspruch 1, bei dem dann,wenn in einem zu jedem der Festplattenlaufwerke im zweiten Gehäuse gehörenden Plattencachekein freier Raum existiert, der Controller im genannten, zum genanntenFestplattenlaufwerk gehörendenPlattencache gespeicherte Daten in eine zum genannten FestplattenlaufwerkgehörendeMagnetplatte schreibt, die Daten von der genannten Magnetplatteund vom zum genannten Controller gehörenden Cachespeicher liestund die zwei ausgelesenen Datenstücke vergleicht. [11] Plattenarraysystem nach Anspruch 1, bei dem: – jedesder genannten Festplattenlaufwerke über mehrere Köpfe zumLesen/Schreiben von Daten verfügt; – der Controllerin einer Kopfprüf-Kontrolltabelleeinen der genannten Köpfespeichert, der entsprechend der genannten Schreibanforderung vonder Informationsverarbeitungsvorrichtung Daten in das genannte Festplattenlaufwerkgeschrieben hat; und – derController die genannte Leseanforderung von der genannten Informationsverarbeitungsvorrichtung empfängt, dannauf die genannte Kopfprüf-KontrolltabelleBezug nimmt, dann Untersuchungsdaten in eine zum genannten Festplattenlaufwerkgehörende Magnetplatteunter Verwendung eines der Köpfe schreibt,die zum Lesen der genannten Daten zu verwenden sind, er die genanntenUntersuchungsdaten von der Magnetplatte liest und die gelesenenDaten mit den Untersuchungsdaten vergleicht, wenn der genannte Kopf,der zum Lesen der genannten Daten verwendet wird, in der Kopfprüf-Kontrolltabellegespeichert wurde. [12] Plattenarraysystem nach Anspruch 1, bei dem: – der Controllervon der Informationsverarbeitungsvorrichtung die Schreibanforderungzum Schreiben von Daten in eines der Festplattenlaufwerke im zweitenGehäuseempfängt,er dann aus den Daten eine Dateneinheit aus mehreren Sektoren aufGrundlage der genannten zu schreibenden Daten sowie Paritätsdatenzum Erkennen von Datenfehlern in den mehreren Sektoren erzeugt under die genannte Dateneinheit in das genannte Festplattenlaufwerk schreibt;und – derController von der Informationsverarbeitungsvorrichtung die Leseanforderungzum Lesen der Daten empfängt,er dann die genannte Dateneinheit liest und er untersucht, ob diegenannten Daten mit fehlerhaftem Inhalt oder nicht im genanntenFestplattenlaufwerk gespeichert sind. [13] Plattenarraysystem nach Anspruch 12, bei dem derController die genannte Dateneinheit in mehrere Stücke unterteiltund er diese Stückeder Dateneinheit jeweils in mehrere Festplattenlaufwerke schreibt,die zu den genannten RAID-Gruppenim zweiten Gehäusegehören. [14] Plattenarraysystem nach Anspruch 1, bei dem: – der ersteSchnittstellenstandard ein Faserkanalstandard ist, der zweite Schnittstellenstandardein Seriell-ATA-Standard ist und der Kommunikationspfad ein FC-AList. [15] Plattenarraysystem nach Anspruch 1, bei dem: – der ersteSchnittstellenstandard ein Faserkanalstandard ist, der zweite Schnittstellenstandardein Parallel-ATA-Standardist und der Kommunikationspfad ein FC-AL ist. [16] Verfahren zum Steuern eines Plattenarraysystemsmit: – einemersten Gehäusezum Aufnehmen einer oder mehrerer RAID-Gruppen aus jeweils mehrerenFestplattenlaufwerken zum Senden/Empfangen von Daten entsprechendeinem ersten Schnittstellenstandard, wobei die Festplattenlaufwerken über einen Kommunikationspfadmiteinander verbunden sind; – einem zweiten Gehäuse zumAufnehmen einer oder mehrerer RAID-Gruppen aus jeweils mehreren Festplattenlaufwerkenzum Senden/Empfangen von Daten entsprechend einem zweiten Schnittstellenstandard,wobei die Festplattenlaufwerken überden Kommunikationspfad mittels mehrerer Wandlungseinheiten zum Wandelndes ersten und des zweiten Schnittstellenstandards ineinander verbundensind, wobei diese Festplattenlaufwerke über geringere Zuverlässigkeitals die im ersten Gehäuseuntergebrachten Festplattenlaufwerke verfügen; und – einemController mit einem Kanal-Steuerabschnitt, einem Platten-Steuerabschnitt,einem Cachespeicher und einer CPU, wobei der Kanal-Steuerabschnittso mit einer Informationsverarbeitungsvorrichtung verbunden ist,dass er mit dieser in Kommunikation treten kann und Anforderungenvon ihr empfangen kann, zu denen eine Leseanforderung zum Lesenvon Daten von den Festplattenlaufwerken im ersten oder zweiten Gehäuse undeine Schreibanforderung zum Schreiben von Daten in die Festplattenlaufwerkeim ersten oder zweiten Gehäusegehören,wobei der Platten-Steuerabschnitt mit den mehreren Festplattenlaufwerkenim ersten und zweiten Gehäuse über denKommunikationspfad so verbunden ist, dass er für Kommunikation mit den mehrerenFestplattenlaufwerken im ersten und zweiten Gehäuse sorgen kann und eine Eingabe/Ausgabevon Daten und Paritätsdatenaus den/in die mehreren Festplattenlaufwerke im ersten und zweitenGehäuseentsprechend der vom Kanal-Steuerabschnitt empfangenen Leseanforderungoder Schreibanforderung ausführenkann, wobei die ParitätsdatenDaten zum Erkennen von Fehlern übermehrere Datenstücke einschließlich derDaten von den/an die mehreren Festplattenlaufwerke im ersten undzweiten Gehäuse sind,wobei der Cachespeicher eine Zwischenspeicherung von in die mehrerenFestplattenlaufwerke einzuschreibenden Daten ausführt undwobei die CPU die Steuerung überden Kanal-Steuerabschnitt und den Platten-Steuerabschnitt verwaltet; wobeidieses Verfahren die folgenden Schritte aufweist: – Lesenmehrerer Datenstücke,die in den mehreren Festplattenlaufwerken im zweiten Gehäuse gespeicherteDaten enthalten, und von Paritätsdatenfür diesemehreren Datenstücke vonallen genannten Festplattenlaufwerken der genannten RAID-Gruppe, zuder die die genannten Daten speichernden Festplattenlaufwerke gehören; und – Untersuchen,ob die genannten mehreren Datenstücke, die die Daten enthalten,mit fehlerhaftem Inhalt oder nicht in die Festplattenlaufwerke geschriebenwurden; – wobeidie genannten Schritte durch den genannten Controller ausgeführt werden. [17] Verfahren zum Steuern eines Plattenarraysystemsnach Anspruch 16, ferner mit den folgenden Schritten: – Schreibenvon Daten in eines der Festplattenlaufwerke im zweiten Gehäuse entsprechender Schreibanforderung von der Informationsverarbeitungsvorrichtungund anschließendesVerstellen eines zum genannten Festplattenlaufwerk gehörenden Kopfsvon einer Position, an der die Daten gespeichert wurden; – anschließendes Lesender genannten Daten von einer zum genannten Festplattenlaufwerkgehörenden Magnetplatteund vom Cachespeicher; und – Vergleichen der zwei ausgelesenenDatenstücke; – wobeidie genannten Schritte durch den genannten Controller ausgeführt werden. [18] Verfahren zum Steuern eines Plattenarraysystemsnach Anspruch 16, ferner mit den folgenden Schritten: – Empfangender genannten Schreibanforderung von der Informationsverarbeitungsvorrichtung,um Daten in eines der Festplattenlaufwerke im zweiten Gehäuse zu schreiben,und anschließendesErzeugen einer Dateneinheit aus Daten, die aus mehreren Sektoren bestehen,auf Grundlage der zu schreibenden Daten und Paritätsdatenzum Erkennen von Datenfehlern in den mehreren Sektoren; – Schreibender genannten Dateneinheit in das genannte Festplattenlaufwerk; – Empfangender Leseanforderung von der Informationsverarbeitungsvorrichtungzum Lesen der genannten Daten, und anschließendes Lesen der genanntenDateneinheit; und – Untersuchen,ob die Daten im genannten Festplattenlaufwerk mit fehlerhaftem Inhaltabgespeichert sind oder nicht; – wobei die genannten Schrittedurch den genannten Controller ausgeführt werden. [19] Verfahren zum Steuern eines Plattenarraysystemsnach Anspruch 16, bei dem: – der erste Schnittstellenstandardein Faserkanalstandard ist, der zweite Schnittstellenstandard ein Seriell-ATA-Standardist und der Kommunikationspfad ein FC-AL ist. [20] Verfahren zum Steuern eines Plattenarraysystemsnach Anspruch 16, bei dem: – der erste Schnittstellenstandardein Faserkanalstandard ist, der zweite Schnittstellenstandard ein Parallel-ATA-Standard ist undder Kommunikationspfad ein FC-AL ist.
类似技术:
公开号 | 公开日 | 专利标题 US10503420B2|2019-12-10|Distributed object storage system comprising low power storage nodes US8943227B2|2015-01-27|Data storage architectureextension system and method US9329781B2|2016-05-03|Disk array apparatus US8595549B2|2013-11-26|Information system and I/O processing method US8375168B2|2013-02-12|Method and system of collection performance data for storage network US8009385B2|2011-08-30|High density array system with active movable media drawers US8312321B2|2012-11-13|Storage control apparatus and failure recovery method for storage control apparatus US5566316A|1996-10-15|Method and apparatus for hierarchical management of data storage elements in an array storage device US8930611B2|2015-01-06|Storage system and control method thereof US7441095B2|2008-10-21|Storage system and storage controller JP3358687B2|2002-12-24|ディスクアレイ装置 EP0784273B1|2003-03-26|Reservekopie-Generierung in einem RAID-Untersystem US8086792B2|2011-12-27|Demoting tracks from cache JP4651913B2|2011-03-16|記憶装置システム US5812754A|1998-09-22|Raid system with fibre channel arbitrated loop US7222216B2|2007-05-22|Workload-adaptive storage system with static allocation US7933120B2|2011-04-26|Cooling structure for rackmount-type control device and rack-type storage control device US9223508B2|2015-12-29|Storage system US9763350B2|2017-09-12|High density data storage system with improved storage device access US8234444B2|2012-07-31|Apparatus and method to select a deduplication protocol for a data storage library US8554979B2|2013-10-08|Disk subsystem JP4621039B2|2011-01-26|ディスク装置 EP1839161B1|2014-08-13|Integrierte-schaltung-implementierung eines storage-shelf-routers und wegsteuerungskarte zur kombinierten verwendung in hochverfügbarkeits-massenspeichereinrichtungs-shelves, die in datenträgerarrays integriert werden können US20150234709A1|2015-08-20|Storage controller, storage system, and control method JP4758666B2|2011-08-31|記憶制御システム及び記憶制御方法
同族专利:
公开号 | 公开日 JP4156499B2|2008-09-24| US20050120264A1|2005-06-02| US20050120263A1|2005-06-02| GB2415083B|2006-04-19| US20050117462A1|2005-06-02| GB2415082B|2006-08-09| US7865665B2|2011-01-04| US7200074B2|2007-04-03| FR2898198A1|2007-09-07| GB0511860D0|2005-07-20| GB2415083A|2005-12-14| GB2415084A|2005-12-14| US7447121B2|2008-11-04| GB0406621D0|2004-04-28| GB2415082A|2005-12-14| DE102004064056B4|2013-01-24| GB2415081B|2006-05-03| US20050117468A1|2005-06-02| JP2005165443A|2005-06-23| US7057981B2|2006-06-06| GB2408624B|2006-03-29| GB0511865D0|2005-07-20| US20110082975A1|2011-04-07| GB0511856D0|2005-07-20| US7453774B2|2008-11-18| FR2863096B1|2007-04-27| GB0511862D0|2005-07-20| US20050154942A1|2005-07-14| GB2408624A|2005-06-01| US20070192539A1|2007-08-16| US8468300B2|2013-06-18| FR2863096A1|2005-06-03| US7203135B2|2007-04-10| GB2415084B|2006-08-23| GB2415081A|2005-12-14|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2005-06-30| OP8| Request for examination as to paragraph 44 patent law| 2007-05-16| Q171| Divided out to:|Ref document number: 102004064056 Country of ref document: DE Kind code of ref document: P | 2007-05-16| 8172| Supplementary division/partition in:|Ref document number: 102004064056 Country of ref document: DE Kind code of ref document: P | 2013-10-08| R002| Refusal decision in examination/registration proceedings| 2014-02-06| R003| Refusal decision now final|Effective date: 20131112 |
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 JP2003400517A|JP4156499B2|2003-11-28|2003-11-28|ディスクアレイ装置| JP2003/400517||2003-11-28||DE200420021442| DE202004021442U1|2003-11-28|2004-03-17|Plattensystem| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|